/*-----------------------------------------------------------------------------
* @Description:     考核问卷调查列表
* @Version:         1.0.0
* @author:          xuexy(915585955@qq.com)
* @date             2017.11.05
* ==NOTES:=============================================
* v1.0.0(2017.11.05):
     初始生成
* ---------------------------------------------------------------------------*/
$(function(){
	/**
     * 初始化提示信息、验证表单
     */
    Pagination(1);

    /**
     * 点击批量删除按钮
     * @param  {[type]} ){                     }
     * @return {[type]}     [description]
     */
    $(".J_allDel").click(function() { 
        delAll();
    }); 
    /**
     * 分页
     */
    $('#pageLimit').bootstrapPaginator({
        //currentPage: 3,
       /* totalPages: $('.pageDataCount').val(),*/
        size: "small",
        bootstrapMajorVersion: 3,
        alignment: "right",
        numberOfPages: 5,
        itemTexts: function (type, page, current) {
            switch (type) {
                case "first": return "首页";
                case "prev": return "<";
                case "next": return ">";
                case "last": return "末页";
                case "page": return page;
            }
        },
        onPageClicked: function (event, originalEvent, type, page) {
            var
                form = $(".J_searchForm").serializeObject();

            Pagination(page, form);  
        }
    });

    /**
     * 分页刷数据
     */
    function Pagination(page, extraData){
        var
            currentPage = page,        
            str = '',
            data = {
                pageNo: currentPage
            };
        jQuery.extend(data, extraData);

        $.ajax({
            type: jQuery.url.CheckManagement.checkList.type,
            url: jQuery.url.CheckManagement.checkList.url,
            contentType: "application/x-www-form-urlencoded; charset=utf-8",
            data: data,     //JSON.stringify
            dataType: "json",
            success: function (rs) {
                $('#J_template').empty();
                if( rs.code == 0){
                    $('#pageLimit').bootstrapPaginator({
                        totalPages: rs.pageDataCount
                    });
                    $.each(rs.list, function(index, item){
                        str += '<tr data-status="'+ item.status +'" data-id="'+ item.id +'">\
                                <td><input type="checkbox" name="subChk"/></th>\
                    			<td>'+ item.number +'</td>\
                                <td>'+ item.title +'</td>\
                                <td>'+ item.owner +'</td>\
                                <td>'+ item.count +'</td>\
                                <td>'+ item.status +'</td>\
                                <td>'+ item.startTime +'</td>\
                                <td>'+ item.endTime +'</td>\
                                <td>\
                                    <a href="/admin/assess/detail/'+ item.id +'" class="label-info"><i class="fa fa-book"></i>&nbsp;数据统计</a>\
                                </td>\
                            </tr>'
                    }); 
                    $('#J_template').append(str);
                }else{                
                    Alert('提示信息', '操作失败，返回参数不正确');
                }
            },
            error: function (message) {
                Alert("提示信息", "请求发送失败。")
            }
        });
    }

    /**
     * 表格删除按钮
     * @param  {[type]} e){                 } [description]
     * @return {[type]}      [description]
     */
    $(document).on('click', '.J_del', function(e){
        var
            tr = $(e.target).parents('tr'),
            id = $(tr).attr('data-id');

        $('.hidId').val(id);
    });

    // *
    //  * 删除按钮
    //  * @param  {[type]} e){                 } [description]
    //  * @return {[type]}      [description]
     
    // $('.J_delDlg').click(function(){
    //     del();
    // });

    // /**
    //  * 删除事件
    //  */
    // function del(){
    //     var
    //         id = $('.hidId').val(),
    //         form = {
    //             id: id
    //         };

    //     $.ajax({
    //         type: jQuery.url.CheckManagement.delCheckInfo.type,
    //         url: jQuery.url.CheckManagement.delCheckInfo.url,
    //         contentType: "application/x-www-form-urlencoded; charset=utf-8",
    //         data: form,     //JSON.stringify
    //         dataType: "json",
    //         success: function (rs) {
    //             if(rs.code == 0){
    //                 $('#delDialog').modal('hide');
    //                 confirm("提示信息", "删除成功！", function(){
    //                     window.location.reload();
    //                 })
    //             }else{
    //                 $('#delDialog').modal('hide');
    //                 Alert('提示信息', '操作失败，参数不正确');
    //             }
    //         },
    //         error: function (message) {
    //             Alert("提示信息", "请求发送失败。")
    //         }
    //     });
    // }

    /**
     * 列表点击搜索事件
     * @param  {[type]} ){                     }
     * @return {[type]}     [description]
     */
    $(".J_search").click(function(){
        var
            form = $(".J_searchForm").serializeObject();

        Pagination(1, form);
    });

    /**
     * 批量删除按钮
     * @param  {[type]} e){                 } [description]
     * @return {[type]}      [description]
     */
    // 全选 
    $(".J_allChk").click(function() { 
        $("input[name='subChk']").prop("checked",this.checked); 
    }); 
    // 单选 
    $(document).on('click',"input[name='subChk']",function() { 
        $(".J_allChk").prop("checked", $("input[name='subChk']").length == $("input[name='subChk']").filter(":checked").length ? true:false); 
    });

    /**
     * 批量删除实现
     * @param  {[type]} e){                 } [descripti on]
     * @return {[type]}      [description]
     */
    function delAll(){
        // 判断是否至少选择一项 
        var 
            checkedList = [],
            statusList = [],
            checkedNum = $("input[name='subChk']:checked").length,
            id;

        $("input[name='subChk']:checked").each(function() {
            checkedList.push($(this).parents('tr').attr('data-id'));
            statusList.push($(this).parents('tr').attr('data-status'));
        }); 
        if(checkedNum == 0) { 
            Alert('提示信息', '请至少选择一项!');  
        }else {// 批量选择'
            if(statusList.indexOf('0')>=0){
                 Confirm('提示信息', '所删除的选项含进行中考核，确认删除吗？',function(){
                    delAllTips()
                 });  
            }else{
                Confirm('提示信息', '确定删除所选考核吗？', function(){
                    delAllTips()
                });  
            }   
        }; 
        function delAllTips(){
            $.ajax({ 
                type: jQuery.url.CheckManagement.delAllInfo.type, 
                url: jQuery.url.CheckManagement.delAllInfo.url,
                contentType: "application/x-www-form-urlencoded; charset=utf-8",
                data: {delitems:checkedList.toString()},
                dataType: "json",
                success: function(rs) {
                    if(rs.code == 0){
                        LiterTip("提示信息", "删除成功！");
                        setTimeout(function(){
                            window.location.reload();
                        }, 1000);
                    }else{
                        $('#modalDialog').modal();
                    }  
                },
                error: function (message) {
                    $('#modalDialog').modal();
                    $(".J_allChk").prop("checked", false);
                } 
            }); 
        }
    };
    
    /**
     * 批量导出按钮
     * @param  {[type]} e){                 } [description]
     * @return {[type]}      [description]
     */
    $(".J_allDown").click(function() { 
    // 判断是否至少选择一项 
        var 
            checkedNum = $("input[name='subChk']:checked").length; 
            checkedList = new Array();

        $("input[name='subChk']:checked").each(function() { 
            checkedList.push($(this).parents('tr').attr('data-id')); 
        });

        if(checkedNum == 0) { // 判断是否至少选择一项 
            Alert('提示信息', '请至少选择一项!');  
        }else{// 批量选择
            Confirm('提示信息', '确定导出所选考核吗？', function(){

                checkedList = checkedList.toString();
                window.location ='export/'+checkedList; 
                $(".J_allChk").prop("checked", false);
                // $.ajax({ 
                //     type: jQuery.url.CheckManagement.downAllInfo.type, 
                //     url: jQuery.url.CheckManagement.downAllInfo.url,
                //     contentType: "application/x-www-form-urlencoded; charset=utf-8", 
                //     data: {'delitems':checkedList.toString()},
                //     dataType: "json",
                //     success: function(rs) { 
                //         if(rs.code == 0){
                //             $("[name ='subChk']:checkbox").attr("checked", false);
                //             $(".J_allChk").prop("checked", false);
                //             // window.location.reload();
                //         }else{
                //             Alert('提示信息', '操作失败，参数不正确');
                //         }  
                //     },
                //     error: function (message) {
                //         Alert("提示信息", "请求发送失败。")
                //     }
                // }); 
            }); 
        }
    }); 

    /**
     * 导入背景图片
     */
    // $(".J_pictureImport").click(function() {
    //     if( filterPictureFile() ){
    //         $.ajaxFileUpload({
    //             url: jQuery.url.CheckManagement.upBackground.url,
    //             contentType: "application/x-www-form-urlencoded; charset=utf-8",
    //             secureuri: false,
    //             fileElementId: 'pictureToUpload', //文件选择框的id属性
    //             dataType : "text/html",//服务器返回的格式，可以是json
    //             //相当于java中try语句块的用法
    //             success: function (data) {
    //                 //关闭遮盖层
    //                 $("#backgroundDialog").modal('hide');
    //                 data = JSON.parse(data);
    //                 if(data.code == 0){
    //                     Confirm("提示信息", data.errMsg,function(){
    //                         window.location.reload();
    //                     })
    //                 }else{
    //                     Alert("提示信息", data.errMsg);
    //                 }
    //             },
    //             error: function () {
    //                 Alert("提示信息","上传失败!" );
    //             }
    //         });
    //     }
    // });
    /**
     * 限制背景图片上传文件格式
     */
    // function filterPictureFile(){
    //     var
    //         filepath = $("#pictureToUpload").val(),
    //         extStart = filepath.lastIndexOf("."),
    //         ext = filepath.substring(extStart, filepath.length).toUpperCase();

    //     if (ext != ".JPG" && ext != ".PNG" && ext != ".JPEG" && ext != ".GIF") {
    //         Alert("提示信息", "文件格式不正确");
    //         $("#pictureToUpload").val("");
    //         return false;
    //     }
    //     return true;
    // }

});

